package pers.xiaojun.boot.module.system.controller.dept.vo.post;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import pers.xiaojun.boot.common.enums.CommonStatusEnum;
import pers.xiaojun.boot.common.pojo.PageParam;
import pers.xiaojun.boot.common.validation.constraints.InEnum;

/**
 * 岗位查询实体
 *
 * @author xiaojun
 * @since 2025-11-04
 */
@EqualsAndHashCode(callSuper = true)
@Schema(description = "岗位查询实体-VO")
@Data
public class PostQueryReqVO extends PageParam {

    @Schema(description = "岗位名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "普通员工")
    private String name;

    @Schema(description = "岗位编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "user")
    private String code;

    @Schema(description = "状态，参见 CommonStatusEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @InEnum(value = CommonStatusEnum.class, message = "状态必须为 {value}")
    private Integer status;

}
